﻿using com.nm.Attributes;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CsrdAPI.model.BalanceData
{
    public class BalanceData
    {
    }
    public class ListData : ReturnData
    {
        [ParamDescription("结算单号")]
        public string BalanceCode { get; set; }
        [ParamDescription("结算金额")]
        public decimal BalanceAmount { get; set; }
        [ParamDescription("结算状态")]
        public bool BalaceSate { get; set; }
        [ParamDescription("扣点")]
        public decimal Discount { get; set; }
    }
    public class ReturnData
    {
        [ParamDescription("品牌")]
        public string CompanyID { get; set; }
        [ParamDescription("店铺ID")]
        public string ShopID { get; set; }
        [ParamDescription("店铺代码")]
        public string ShopCode { get; set; }
        [ParamDescription("店铺简称")]
        public string ShopName { get; set; }
        [ParamDescription("类别")]
        public string KindName { get; set; }
        [ParamDescription("销售数量")]
        public decimal Qty { get; set; }
        [ParamDescription("业绩金额")]
        public decimal RealAmount { get; set; }
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
    }

    public class SearchData
    {
        [ParamDescription("页码")]
        public int Page { get; set; } = 1;
        [ParamDescription("页数")]
        public int Size { get; set; } = 10;
        [ParamDescription("结算状态")]
        public int SateID { get; set; }
        [ParamDescription("品牌")]
        public string CompanyID { get; set; }
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
        [ParamDescription("店铺名称或代码")]
        public string ShopStr { get; set; }
    }

    public class BalanceParam
    {
        [ParamDescription("品牌")]
        public string CompanyID { get; set; }
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
        [ParamDescription("店铺")]
        public string ShopList { get; set; }
        [ParamDescription("结算：true：结算；false：未结算")]
        public bool IsBalance { get; set; }
    }


    public class ClientData
    {
        [ParamDescription("客户代码")]
        public string ClientCode { get; set; }
        [ParamDescription("注册名称")]
        public string RegistName { get; set; }
        [ParamDescription("证照号")]
        public string RegistCode { get; set; }
        [ParamDescription("注册地址")]
        public string RedistAddress { get; set; }
        [ParamDescription("开户行")]
        public string BankName { get; set; }
        [ParamDescription("账号")]
        public string AccountCode { get; set; }
        [ParamDescription("联系人")]
        public string ShopLinkMan { get; set; }
        [ParamDescription("联系电话")]
        public string ShopTelePhone { get; set; }
        [ParamDescription("合同号")]
        public string ContractCode { get; set; }
        [ParamDescription("合同状态")]
        public string ContractState { get; set; }
    }

    public class PrintData
    {
        [ParamDescription("结算单号")]
        public string BalanceCode { get; set; }
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
        [ParamDescription("扣率")]
        public decimal Discount { get; set; }
        [ParamDescription("销售金额")]
        public decimal RealAmount { get; set; }
        [ParamDescription("销售数量")]
        public decimal Qty { get; set; }
        [ParamDescription("发票金额")]
        public decimal BalanceAmount { get; set; }
        [ParamDescription("不含税金额")]
        public double TaxFreeAmount { get; set; }
        [ParamDescription("税率")]
        public double TaxRate { get; set; }
        [ParamDescription("税额")]
        public double TaxAmount { get; set; }
        [ParamDescription("制单日期")]
        public string CreateDate { get; set; }
    }

    public class ChartModel
    {
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
        [ParamDescription("结算金额")]
        public decimal BalanceAmount { get; set; }
    }

    public class ChartCountData
    {
        [ParamDescription("结算日期")]
        public string BalanceDate { get; set; }
        [ParamDescription("已结算")]
        public double Balance { get; set; }
        [ParamDescription("未结算")]
        public double NoBalance { get; set; }
    }
}
